Links
Набор классов для извлечения ссылок со страницы сайта. Ссылки могут находиться в разных атрибутах и в разных форматах, поэтому созданы классы для извлечения ссылок в различных случаях
LinksExtractor
Абстрактный класс-шаблон для создания классов для извлечения ссылок. Извлекает только ссылки относящиеся к текущему сайту в сети мультисайт, для извлечения ссылок на другие сайты в сети мультисайт используется класс LinksExtractorMS.
Свойства:
public readonly HtmlDomParser $dom-HtmlDomParserизPageBuilderс помощью которого можно легко парсить html код страницы
Методы:
public function get_links(): array- метод, который нужно вызывать для получения ссылок со страницы. Вызывает методget_links_from_current_siteдля получения ссылок с текущего сайта, но может быть переопределен для получения ссылок с нескольких сайтов в сети мультисайтprotected function find( string $selector ): list<SimpleHtmlDomInterface>- абстракция надHtmlDomParserдля получения всех элементов страницы соответствующих селектору. В случаи возникновения ошибки выбрасывается исключениеPageSkippedExceptionabstract protected function get_elements(): list<SimpleHtmlDomInterface>- возвращает массив элементов, которые имеют требуемые атрибуты для извлечения ссылок. При определении в дочерних классах метод должен использовать методfindprotected function get_links_from_current_site(): array- возвращает все ссылки с текущего сайта. Используется в методеget_links
LinksExtractorMS
Расширяет класс LinksExtractor для получения со страницы ссылки не только на текущий сайт в мультисети, но и на все остальные сайты
LinksExtractorStyles
Расширяет класс LinksExtractorMS
Извлекает все ссылки из элементов style и элементов с атрибутом style
LinksExtractorScripts
Расширяет класс LinksExtractorMS
Извлекает все ссылки из элементов script
LinksExtractorAttributeSrcset
Расширяет класс LinksExtractor
Извлекает все ссылки из элементов c атрибутами srcset и data-srcset
LinksExtractorAttributes
Расширяет класс LinksExtractor
Извлекает все ссылки из элементов c атрибутами href, src, data-src, poster, data-dce-background-image-url, data-lottie-url, data-rive-src, data-rive-wasm и data-rive-wasm-fallback
LinksExtractorAttributeJSON
Расширяет класс LinksExtractorMS
Извлекает все ссылки из конфигурационных атрибутов в формате json. Атрибуты: data-ep-wrapper-link, data-json data-settings и @click